package com.ruicar.afs.cloud.apply.common.utils;

import java.util.HashMap;
import java.util.Map;

/**
 * @description: 常量类
 * @author: sijun.yu
 * @date: 2020/5/14 18:33
 */
public interface ApplyConstants {

    /**
     * 字母
     */
    public static final Map<Integer, String> LETTER = new HashMap<Integer, String>() {{
        put(1, "A");
        put(2, "B");
        put(3, "C");
        put(4, "D");
        put(5, "E");
        put(6, "F");
        put(7, "G");
        put(8, "H");
        put(9, "I");
        put(10, "J");
        put(11, "K");
        put(12, "L");
        put(13, "M");
        put(14, "N");
        put(15, "O");
        put(16, "P");
        put(17, "Q");
        put(18, "R");
        put(19, "S");
        put(20, "T");
        put(21, "U");
        put(22, "V");
        put(23, "W");
        put(24, "X");
        put(25, "Y");
        put(26, "Z");
    }};

    /**
     * 申请编号，最大数为 999999
     */
    public static final long MAX_COUNT = 999999;
    public static final int INIT_LETTER_NUMBER = 1;

    /**
     * 申请编号-编号值，dp新车，er二手车，bp本品，tp临时
     */
    public static final String VALUE_NO_DP_APPLY_NO = "DP";
    public static final String VALUE_NO_ER_APPLY_NO = "ER";
    public static final String VALUE_NO_BP_APPLY_NO = "BP";
    public static final String VALUE_NO_TP_APPLY_NO = "TP";
    /**
     * 申请编号-编号类型
     */
    public static final String VALUE_INDEX_APPLY_NO = "APPLY_NO";
    public static final String VALUE_INDEX_LETTER = "LETTER";

    /*-----------------进件申请-申请状态------------------------------------*/
    /**
     * 进件申请-申请状态-草稿
     */
    public static final String APPLY_STATUS_DRAFT = "00";
    /**
     * 进件申请-申请状态-已提交
     */
    public static final String APPLY_STATUS_SUBMIT = "01";
    /**
     * 进件申请-申请状态-待审核
     */
    public static final String APPLY_STATUS_PENDING = "02";
    /**
     * 进件申请-申请状态-审核中
     */
    public static final String APPLY_STATUS_APPROVE = "03";
    /**
     * 进件申请-申请状态-家访中
     */
    public static final String APPLY_STATUS_VISIT = "04";
    /**
     * 进件申请-申请状态-修订暂停
     */
    public static final String APPLY_STATUS_SUSPEND = "05";
    /**
     * 进件申请-申请状态-修订回复
     */
    public static final String APPLY_STATUS_REPLY = "06";
    /**
     * 进件申请-申请状态-撤销
     */
    public static final String APPLY_STATUS_REVOKE = "07";
    /**
     * 进件申请-申请状态-核准
     */
    public static final String APPLY_STATUS_PASS = "08";
    /**
     * 进件申请-申请状态-附条件核准
     */
    public static final String APPLY_STATUS_CONDITION = "09";
    /**
     * 进件申请-申请状态-拒绝
     */
    public static final String APPLY_STATUS_REFUSE = "10";
    /**
     * 进件申请-申请状态-取消
     */
    public static final String APPLY_STATUS_CANCEL = "11";
    /**
     * 复议资料补充
     */
    public static final String APPLY_STATUS_REVIEWPENDINGSUBMISSION = "12";

    /**
     * 进件申请-申请状态-撤回待处理
     */
    public static final String CALL_BACK_WAIT_SUBMIT = "13";

    /*----------------------放款申请-申请状态------------------------------------*/
    /**
     * 放款申请-申请状态-待提交
     */
    public static final String CONTRACT_STATUS_01 = "01";
    /**
     * 放款申请-申请状态-已提交
     */
    public static final String CONTRACT_STATUS_SUBMIT = "02";
    /**
     * 放款申请-申请状态-审核中
     */
    public static final String CONTRACT_STATUS_APPROVE = "03";
    /**
     * 放款申请-申请状态-审核通过
     */
    public static final String CONTRACT_STATUS_PASS = "04";
    /**
     * 放款申请-申请状态-已退回
     */
    public static final String CONTRACT_STATUS_BACK = "05";
    /**
     * 放款申请-申请状态-合同取消
     */
    public static final String CONTRACT_STATUS_CANCEL = "06";

    /*--------------------------地址类型-户籍地址--------------------------------------*/
    /**
     * 地址类型-户籍地址
     */
    public static final String PERMANENT_ADDRESS = "1";
    /**
     * 地址类型-单位地址
     */
    public static final String COMPANY_ADDRESS = "2";
    /**
     * 地址类型-现居住地址
     */
    public static final String RESIDENTIAL_ADDRESS = "3";

    /* -------------------------案件角色----------------------------*/
    /**
     * 案件角色-主借人01
     */
    public static final String PRINCIPAL_BORROWER = "01";
    /**
     * 案件角色-共借人02
     */
    public static final String COMMON_BORROWER = "02";
    /**
     * 案件角色-担保人03
     */
    public static final String GUARANTOR = "03";
    /**
     * 案件角色-见证人04
     */
    public static final String WITNESSES = "04";
    /**
     * 案件角色-车商05
     */
    public static final String CAR_DEALER = "05";

    /**
     * 费用类型-车款
     */
    public static final String COST_TYPE_CAR_LOAN = "01";
    /**
     * 费用类型-附加贷
     */
    public static final String COST_TYPE_ADD_LOAN = "02";

    /**
     * 业务类型：新车
     */
    public static final String BUSINESS_TYPE_NEW_CAR = "01";
    /**
     * 业务类型：二手车
     */
    public static final String BUSINESS_TYPE_OLD_CAR = "02";
    /**
     * 长城数据库品牌名称
     */
    public static final String PIN_PAI = "PIN@PAI";
    /**
     * 长城数据库车辆类型标识LCV
     */
    public static final String CAR_TYPE_LCV = "LCV@LCV";

    /*-------------------------预审批状态----------------------------*/
    /**
     * 预审批-待提交
     */
    public static final String PRE_APPROVE_PRE_SUBMIT = "0";
    /**
     * 预审批-通过
     */
    public static final String PRE_APPROVE_PASS = "1";
    /**
     * 预审批-拒绝
     */
    public static final String PRE_APPROVE_REFUSE = "2";
    /**
     * 预审批-失效
     */
    public static final String PRE_APPROVE_INVALID = "3";
    /**
     * 预审批-退回
     */
    public static final String PRE_APPROVE_BACK = "4";
    /**
     * 预审批-审核中
     */
    public static final String PRE_PENDDING = "5";
    /**
     * 预审批-A级
     */
    public static final String LEVEL_A = "A";
    /**
     * 预审批-B级
     */
    public static final String LEVEL_B = "B";
    /**
     * 预审批-C级
     */
    public static final String LEVEL_C = "C";
    /**
     * 预审批-D级
     */
    public static final String LEVEL_D = "D";

    /**
     * 1-普通车商
     */
    public static final String DEALER_TYPE_ORDINARY = "01";

    /**
     * 2-直营车商
     */
    public static final String DEALER_TYPE_DIRECT = "02";

    /**
     * 渠道归属-00-SP
     */
    public static final String CHANNEL_BELONG_SP = "00";

    /**
     * 渠道归属-01-直营
     */
    public static final String CHANNEL_BELONG_DIRECT = "01";

    /**
     * 渠道归属-02-总对总
     */
    public static final String CHANNEL_BELONG_TOTAl = "02";

    /**
     * 有效
     */
    public static final String STATUS_VALID = "1";

    /**
     * 无效
     */
    public static final String STATUS_INVALID = "2";

    /**
     * 页面
     */
    public static final Integer PAGE_NUM = 1;
    /**
     * 当前页面数量
     */
    public static final Integer PAGE_SIZE = 10;


    /**
     * deptIds-部门id
     */
    public static final String DEPT_IDS = "deptIds";

    /**
     * 字符串-0
     */
    public static final String ZERO = "0";
    /**
     * 字符串-1
     */
    public static final String ONE = "1";
    /**
     * 字符串-2
     */
    public static final String TOW = "2";
    /**
     * int 0
     */
    public static final int ZERO_INT = 0;
    /**
     * int 1
     */
    public static final int ONE_INT = 1;
    /**
     * int 2
     */
    public static final int TOW_INT = 2;
    /**
     * int 3
     */
    public static final int THREE_INT = 3;

    /**
     * ""
     */
    public static final String IS_NULL = "";

    /**
     * 购置税
     **/
    public static final String PURCHASE_TAX = "F001";
    /**
     * 保险
     **/
    public static final String INSURANCE = "F002";
    /**
     * GPS
     **/
    public static final String GPS = "F003";
    /**
     * 装潢费
     **/
    public static final String DECORATE = "F007";
    /**
     * 精品
     **/
    public static final String BOUTIQUE = "F006";
    /***
     * 长城标识
     */
    public static final String IS_GREAT_WALL = "长城";
    /**
     * 是否长城品牌
     **/
    public static final String GREAT_WALL = "yes";
    public static final String UN_GREAT_WALL = "no";
    /**
     * 是否拥有子产品
     **/
    public static final String IS_SUB_PRODUCT = "1";
    public static final String IS_NOT_SUB_PRODUCT = "0";

    /**
     * 未录入
     */
    public static final String APP_FORM_STATE_ZERO = "0";
    /**
     * 已录入
     */
    public static final String APP_FORM_STATE_ONE = "1";
    /**
     * 待录入
     */
    public static final String APP_FORM_STATE_TWO = "2";
    /**
     * 是否长城车联网
     **/
    public static final String IS_INTERNET = "yes";
    public static final String UN_INTERNET = "0";
    public static final String IS_NOT_INTERNET = "no";
    /**
     * 预审批（00）
     */
    public static final String MESSAGE_TYPE_ZERO = "00";
    /**
     * 协议签约：01
     */
    public static final String MESSAGE_TYPE_ONE = "01";
    /**
     * 合同签约：02
     */
    public static final String MESSAGE_TYPE_TWO = "02";
    /**
     * 贷后银行卡变更：03
     */
    public static final String MESSAGE_TYPE_THREE = "03";
    /**
     * 贷后银行卡变更（changeBankInfo）
     */
    public static final String CHANGE_BANK_INFO = "changeBankInfo";
    /**
     * 短信使用场景（预审批：00；进件：01；放款02）
     */
    public static final String USAGESCENARIOS_TYPE_ZERO = "00";
    /**
     * 短信使用场景（预审批：00；进件：01；放款02 贷后银行卡变更03）
     */
    public static final String USAGESCENARIOS_TYPE_ONE = "01";
    /**
     * 短信使用场景（预审批：00；进件：01；放款02 贷后银行卡变更03）
     */
    public static final String USAGESCENARIOS_TYPE_TWO = "02";
    /**
     * 短信使用场景（预审批：00；进件：01；放款02 贷后银行卡变更03）
     */
    public static final String USAGESCENARIOS_TYPE_THREE = "03";


    /**
     * GPS状态 已派单
     **/
    public static final String SEND_TASK = "sendTask";
    /**
     * GPS状态 未派单
     **/
    public static final String UN_SEND_TASK = "unSendTask";
    /**
     * GPS状态 待安装
     **/
    public static final String WAIT_INSTALL = "waitInstall";
    /**
     * GPS状态 已安装
     **/
    public static final String COMPLETE_INSTALL = "completeInstall";
    /**
     * GPS状态 审核通过
     **/
    public static final String PASS_AUDIT = "passAudit";
    /**
     * GPS状态 审核未通过
     **/
    public static final String UN_PASS_AUDIT = "unPassAudit";
    /**
     * GPS状态 取消安装
     */
    public static final String CANCEL_INSTALL = "cancel";

    /**
     * 渠道归属
     **/
    public static final String CHANNEL_BELONG = "01";
    /**
     * 思图成功返回code
     **/
    public static final String ST_SUCCESS_CODE = "1";
    /**
     * 思图人脸对比成功code
     **/
    public static final String ST_SUCCESS = "0";
    /**
     * 证件状态(到期)
     **/
    public static final String CERTIFICATE_STATE_ZERO = "00";
    /**
     * 证件状态(15天到期)
     **/
    public static final String CERTIFICATE_STATE_ONE = "01";
    /**
     * 证件状态(未到期)
     **/
    public static final String CERTIFICATE_STATE_TWO = "02";

    /**
     * 业务节点
     **/
    public static final String CONTRACT_LOAN = "printLoanApply";
    /**
     * 签约状态
     */
    public static final String SIGN_STATUS = "00";

    public static final String SPOUSE = "00006";
    public static final String PARENT = "00002";
    public static final String BROTHER = "00007";
    public static final String FRIEND = "00102";
    public static final String FAMILY = "00104";
    public static final String ENTERPRISE_THIRD = "00106";
    public static final String SUPPLIER = "00107";
    public static final String BANK_FACTORING = "00108";
    public static final String PERSONAL_THIRD = "00109";
    public static final String OTHER = "00122";
    public static final String COLLEAGUE = "00123";

    /**
     * 商户ID
     **/
    public static final String OPEN_NUMBER = "MC201912150001";

    /**
     * 系统来源-多品核心
     **/
    public static final String APP_NUMBER = "542dc2663c824d9dbcec53ef4635bb29";
    /**
     * 预审批身份证正面 附件小类唯一标识
     */
    public static final String PRE_BORROWER_ID_CARD_FRONT = "preBorrowerIdcardFront";

    /**
     * 主借人身份证正面 附件小类唯一标识
     */
    public static final String MAIN_BORROWER_ID_CARD_FRONT = "mainBorrowerIdcardFront";
    /**
     * 共借人身份证正面 附件小类唯一标识
     */
    public static final String COM_BORROWER_ID_CARD_FRONT = "comBorrowerIdcardFront";
    /**
     * 担保人身份证正面 附件小类唯一标识
     */
    public static final String GUARANTOR_BORROWER_ID_CARD_FRONT = "guarantorBorrowerIdcardFront";
    /**
     * 合作商登陆身份证正面 附件小类唯一标识
     */
    public static final String LOGIN_FACE_PHOTO = "loginFacePhoto";

    /**
     * 主借人面签照片
     */
    public static final String ORDER_APPLY_FACE_PHOTO = "orderApplyFacePhoto";
    /**
     * 共借人面签照片
     */
    public static final String ORDER_APPLY_BORROWER_FACE_PHOTO = "orderApplyBorrowerFacePhoto";
    /**
     * 担保人面签照片
     */
    public static final String ORDER_APPLY_GUARANTOR_FACE_PHOTO = "orderApplyGuarantorFacePhoto";

    /**
     * 放款审批
     */
    public static final String LOAN_APPROVAL = "loan";
    /**
     * GPS审批
     */
    public static final String GPS_APPROVAL = "gps";
    /**
     * PC上传附件
     */
    public static final String PC_UPLOAD = "pc";
    /**
     * APP上传附件
     */
    public static final String APP_UPLOAD = "app";

    /**
     * 是否常量：是
     */
    public static final String YES = "1";
    /**
     * 是否常量：否
     */
    public static final String NO = "0";

    /**
     * 额度类型：签放额度
     */
    public static final String QUOTA_TYPE_ONE = "1";
    /**
     * 是否常量：先放后抵额度
     */
    public static final String QUOTA_TYPE_TWO = "2";
    /**
     * 成功：0000
     */
    public static final String CODE_SUCCESS = "0000";
    /**
     * 失败：9999
     */
    public static final String CODE_FAILURE = "9999";
    /**
     * 见证人新车
     */
    public static final String WITNESS_NEW_CAR = "0";
    /**
     * 见证人二手车
     */
    public static final String WITNESS_OLD_CAR = "1";
    /**
     * 工行
     */
    public static final String ICBC = "137";
    public static final String SIGN_ICBC = "01";
    /**
     * 建行
     */
    public static final String CCB = "524853";
    public static final String SIGN_CCB = "03";
    /**
     * 农行
     */
    public static final String ABC = "13792938";
    public static final String SIGN_ABC = "02";

    /**
     * 多品编码
     */
    public static final String ICOS = "ICOS";

    /**
     * 放款撤回
     */
    public static final String LOAN_BACK = "back";
    /**
     * 放款取消
     */
    public static final String LOAN_CANCEL = "cancel";

    /**
     * 聚合申请状态码
     */
    public static final String APPLY_FLAG = "1";
    /**
     * 聚合申请状态码翻译
     */
    public static final String APPLY_FLAG_NAME = "申请中";
    /**
     * 重出场景：01进件重出合同
     */
    public static final String OUT_SCENE_ONE = "01";
    /**
     * 重出场景：02放款重出合同
     */
    public static final String OUT_SCENE_TWO = "02";

    /**
     * 系统用户
     */
    public static final String APPLY_USER = "system";
    public static final String CUSTOMER_STATUS = "1";
    public static final String SPECIAL_STATUS = "1";

    public static final String APPLY_STATUS_ASSERT_CHANGE="02";
    /**
     * 管理员
     * */
    public static final String ROLE_ADMIN="ROLE_ADMIN";
    /**
     * 新车预录单员
     * */
    public static final String ROLE_XCRECORDED="ROLE_XCRECORDED";
    /**
     * 二手车预录单员
     * */
    public static final String ROLE_RECORDED="ROLE_RECORDED";
    /**
     * 新车申请报单员
     * */
    public static final String ROLE_XCAPPLY="ROLE_XCAPPLY";
    /**
     * 二手车申请报单员
     * */
    public static final String ROLE_APPLY="ROLE_APPLY";
    /**
     * 新车预放款员
     * */
    public static final String ROLE_XCPREPAYMENT="ROLE_XCPREPAYMENT";
    /**
     * 二手车预放款员
     * */
    public static final String ROLE_PREPAYMENT="ROLE_PREPAYMENT";
    /**
     * 新车放款报单员
     * */
    public static final String ROLE_XCPAYMENT="ROLE_XCPAYMENT";
    /**
     * 二手车放款报单员
     * */
    public static final String ROLE_PAYMENT="ROLE_PAYMENT";
    /**
     * 新车非直营渠道管理员
     * */
    public static final String ROLE_NEW_CHANNEL_ADMIN="ROLE_NEW_CHANNEL_ADMIN";
    /**
     * 二手车非直营渠道管理员
     * */
    public static final String ROLE_OLD_CHANNEL_ADMIN="ROLE_OLD_CHANNEL_ADMIN";
    /**
     * 新车直营渠道管理员
     * */
    public static final String ROLE_NEW_DIRECT_ADMIN="ROLE_NEW_DIRECT_ADMIN";
    /**
     * 二手车直营渠道管理员
     * */
    public static final String ROLE_OLD_DIRECT_ADMIN="ROLE_OLD_DIRECT_ADMIN";
    /**
     * 提交标识
     * */
    public static final String SUBMIT="commit";
    /**
     * 合同模板
     * */
    public static final String PRINT_FILE="com_print_form_manage";
    /**
     * 合同系统取消状态
     * */
    public static final String CONTRACT_CANCEL="contractCancel";

}
